#pragma once

#include <thread>
#include <string>
#include <memory>
#include <chrono>
#include <mutex>
#include <condition_variable>
#include <atomic>
#include "model/AbstractNode.h"

namespace zeroplus::mq
{
    class PublisherNode : public AbstractNode
    {
    private:
    public:
        PublisherNode(const std::string &uri, const ConnectType &connectType = connect)
        {
            CreateConnection(zmqpp::socket_type::pub, uri, connectType);
        }

        ~PublisherNode()
        {
        }

        ssize_t Send(const std::string topic, const Bytes &message);
    };
}
